package com.ifood.system.mapper;

import java.util.List;

import com.ifood.common.core.domain.entity.FoodProductCategory;
import com.ifood.common.core.domain.vo.ProductCategoryVo;
import org.apache.ibatis.annotations.Mapper;

/**
 * 商品分类Mapper接口
 *
 * @author ifood
 * @date 2024-01-14
 */
@Mapper
public interface FoodProductCategoryMapper {
    /**
     * 查询商品分类
     *
     * @param categoryId 商品分类主键
     * @return 商品分类
     */
    public FoodProductCategory selectFoodProductCategoryByCategoryId(Long categoryId);

    /**
     * 查询商品分类列表
     *
     * @param foodProductCategory 商品分类
     * @return 商品分类集合
     */
    public List<FoodProductCategory> selectFoodProductCategoryList(FoodProductCategory foodProductCategory);

    /**
     * 新增商品分类
     *
     * @param foodProductCategory 商品分类
     * @return 结果
     */
    public int insertFoodProductCategory(FoodProductCategory foodProductCategory);

    /**
     * 修改商品分类
     *
     * @param foodProductCategory 商品分类
     * @return 结果
     */
    public int updateFoodProductCategory(FoodProductCategory foodProductCategory);

    /**
     * 删除商品分类
     *
     * @param categoryId 商品分类主键
     * @return 结果
     */
    public int deleteFoodProductCategoryByCategoryId(Long categoryId);

    /**
     * 批量删除商品分类
     *
     * @param categoryIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteFoodProductCategoryByCategoryIds(Long[] categoryIds);


    List<ProductCategoryVo> getProductCategories();
}
